package com.zwj.interview.链表;

/**
 * @Author: Zwj
 * @Date: 2022/9/12 9:41
 */
public class 删除链表的中间节点 {

    public ListNode removeMidNode(ListNode head){
        if(head==null || head.next==null){
            return head;
        }
        if(head.next.next==null){
            return head.next;
        }
        //快节点走两步，慢节点走一步
        ListNode prev=head;
        ListNode cur=head.next.next;
        while(cur.next!=null || cur.next.next!=null){
            prev=prev.next;
            cur=cur.next.next;
        }
        //走到这里，说明找到了要删除的节点的前一个节点
        prev.next=prev.next.next;
        return head;
    }



}